package com.ruoyi.training.domain;

import com.ruoyi.common.constant.training.CurriculumConstants;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 课程题目管理对象 tb_exam_question
 *
 * @author wng
 * @date 2024-08-04
 */
public class ExamQuestion extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    private Long id;

    /**
     * 课程id 关联课程表
     */
    @Excel(name = "课程id 关联课程表")
    private Long curriculumId;

    /**
     * 章节id 关联课程章节表
     */
    @Excel(name = "章节id 关联课程章节表")
    private Long chapterId;

    /**
     * 题干
     */
    @Excel(name = "题干")
    private String problem;

    /**
     * 答案
     */
    @Excel(name = "答案")
    private String answer;

    /**
     * 题目类型
     * 单选 Single
     * 多选 Multi
     * 判断 Judge
     */
    @Excel(name = "题目类型 " +
            "单选 Single " +
            "多选 Multi " +
            "判断 Judge")
    private CurriculumConstants.TopicTypeEnum topicType;

    /**
     * 0正常 1删除
     */
    private Integer delFlag;

    /**
     * 添加标识
     */
    private String addFlag;

    /**
     * 批次id
     */
    private String batchId;

    public String getBatchId() {
        return batchId;
    }

    public void setBatchId(String batchId) {
        this.batchId = batchId;
    }

    public ExamQuestion() {
    }

    public ExamQuestion(Long curriculumId, Long chapterId, String batchId) {
        this.curriculumId = curriculumId;
        this.chapterId = chapterId;
        this.batchId = batchId;
    }

    public String getAddFlag() {
        return addFlag;
    }

    public void setAddFlag(String addFlag) {
        this.addFlag = addFlag;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getId() {
        return id;
    }

    public void setCurriculumId(Long curriculumId) {
        this.curriculumId = curriculumId;
    }

    public Long getCurriculumId() {
        return curriculumId;
    }

    public void setChapterId(Long chapterId) {
        this.chapterId = chapterId;
    }

    public Long getChapterId() {
        return chapterId;
    }

    public void setProblem(String problem) {
        this.problem = problem;
    }

    public String getProblem() {
        return problem;
    }

    public void setAnswer(String answer) {
        this.answer = answer;
    }

    public String getAnswer() {
        return answer;
    }

    public CurriculumConstants.TopicTypeEnum getTopicType() {
        return topicType;
    }

    public void setTopicType(CurriculumConstants.TopicTypeEnum topicType) {
        this.topicType = topicType;
    }

    public void setDelFlag(Integer delFlag) {
        this.delFlag = delFlag;
    }

    public Integer getDelFlag() {
        return delFlag;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("curriculumId", getCurriculumId())
                .append("chapterId", getChapterId())
                .append("problem", getProblem())
                .append("answer", getAnswer())
                .append("topicType", getTopicType())
                .append("delFlag", getDelFlag())
                .append("createTime", getCreateTime())
                .append("createBy", getCreateBy())
                .append("updateTime", getUpdateTime())
                .append("updateBy", getUpdateBy())
                .toString();
    }
}
